package cn.design.realize;

/**
 * @author dlq
 * @description go工程实现的步骤
 *   子类具体模板(Concrete Template):
 *     (1) 实现父类所定义的一个或多个抽象方法，它们是一个顶级逻辑的组成步骤
 *     (2) 每一个抽象模板角色都可以有任意多个具体模板角色与之对应，而每一个具体模板角色都可以给出这些抽象方法（也就是顶级逻辑的组成步骤）的不同实现，从而使得顶级逻辑的实现各
 *     (3) 重写父类中"剩余步骤的方法",以实现不同的目标或者功能
 * @date 2020/10/19 10:11
 * @since 1.0
 */
public class GoProjectTemplate extends ProjectAbstractTemplate{

    /**
     * @description 实现了 父类的方法，go的具体实现
     * @param
     * @return void
     * @author dlq
     * @date 2020/10/19 10:11
     */
    @Override
    protected void readCodingEnv() {
        System.out.println("安装 go 环境.......");
    }
    /**
     * @description 实现了 父类的方法，go的具体实现
     * @param
     * @return void
     * @author dlq
     * @date 2020/10/19 10:11
     */
    @Override
    protected void readCodingSoftware() {
        System.out.println("安装 golang 软件.......");
    }
    /**
     * @description 实现了 父类的方法，go的具体实现
     * @param
     * @return void
     * @author dlq
     * @date 2020/10/19 10:11
     */
    @Override
    protected void startProject() {
        System.out.println("开始 创建 go 工程,并且开始编码.......");
    }
}
